/**
 *  String 中的正则匹配
 * @author smallcatX0 (smallcatx0@gmail.com)
 * @date    2018-01-23 15:52:07
 * @version $Id$
 */

public class StringRegex  {
    public static void main(String[] args) {
		/**
		 * 1.匹配叠词 
		 * eg1: 快快乐乐,BBAA
		 * eg2: baba,高兴高兴
		 */
		// \\1代表第一组，\\2代表第二组
		String r = "(.)\\1(.)\\2";     // 匹配 AABB 形
		String r2 = "(..)\\1";		   // ABAB 形

		System.out.println("快快乐乐".matches(r));
		System.out.println("AABB".matches(r))

		System.out.println("高兴高兴".matches(r2));
		System.out.println("baba".matches(r2));
 
		/**
		 * 2.还原字符
		 * eg:我我我。。。要。。。要。。要。。。。学。。。学学。。编编。。编编编。。。程。
		 *   out: 我要学编程。
		 */

		// String s2 ="我我我。。。要。。。要。。要。。。。学。。。学学。。编编。。编编编。。。程。";
		// String r4 = "(.)\\1+";
		// s2 = s2.replaceAll("。","");
		// String out = s2.replaceAll(r4,"$1");
		// System.out.println(out);

		/**
		 * 3.切割相同字符
		 * eg：aadbbbfffoooppp
		 *    out：["aa","d","bbb","fff","ooo","ppp"]
		 */
		// String s    = "aadbbbfffoooppp";
		// String r3   = "(\\w+)";
		// String[] ss = 
		// System.out.println();

	}
}